<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
	<head>
		<title>login.jsp</title>
		<link rel="stylesheet" type="text/css" href="btn_class.css" />
		<link rel="stylesheet" type="text/css"
			href="ext-2.2/resources/css/ext-all.css" />
		<script type="text/javascript" src="ext-2.2/adapter/ext/ext-base.js"></script>
		<script type="text/javascript" src="ext-2.2/ext-all.js"></script>
  
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
		
		<script type="text/javascript">
		<%
			String uId = (String) session.getAttribute("Uid");
			if(uId == null || uId.equals("null")) {
		%>
			window.parent.location.href = 'index.jsp';
		<%
			}
		%>
	</script>
	</head>
	
		<script type="text/javascript">
		Ext.BLANK_IMAGE_URL = "ext-2.2/resources/images/default/s.gif";

	var Jthtwb = Ext.data.Record.create( [ 
	{
		name : 'PUaddrId',
		mapping : 'PUaddrId',
		type : 'string'
	}, {
		name : 'PUname',
		mapping : 'PUname',
		type : 'string'
	}, {
		name : 'PUphoneNum',
		mapping : 'PUphoneNum',
		type : 'string'
	}, {
		name : 'PUsparePhoneNum',
		mapping : 'PUsparePhoneNum',
		type : 'string'
	}, {
		name : 'PUarea',
		mapping : 'PUarea',
		type : 'string'
	}, {
		name : 'PUaddress',
		mapping : 'PUaddress',
		type : 'string'
	}, {
		name : 'PUzip',
		mapping : 'PUzip',
		type : 'string'
	}, {
		name : 'PUnote',
		mapping : 'PUnote',
		type : 'string'
	}
	]);

	var ds = new Ext.data.Store( {
		url : 'address!list.do',
		reader : new Ext.data.JsonReader( {
			totalProperty : 'totalProperty',
			root : 'root'
		}, Jthtwb)
		//idProperty : 'PUaddrId',
		//remoteSort : true

	});

//ds.setDefaultSort('PUaddrId', 'desc');
	
	ds.load( {
		params : {
			start : 0,
			limit : 100
		}
	});
	
	
	
	//定义勾选框，不需要可不必定义
	var sm = new Ext.grid.CheckboxSelectionModel();

	//定义列
	var colM = new Ext.grid.ColumnModel( [ sm, // new Ext.grid.RowNumberer(),//增加自动编号，不需要可不必定义
			// {header:'序号',dataIndex:'id',width:40,sortable:true}, // 生成列，sortable为列排序，不需要设置为false，默认false，renderer为该列增加自定义函数
	   {
		id : 'PUname',
		header : '收件人姓名',
		dataIndex : 'PUname',
		width : 100,
		sortable : false
	}, {
		header : '联系电话',
		dataIndex : 'PUphoneNum',
		width : 180,
		sortable : false
	}, {
		header : '备用电话',
		dataIndex : 'PUsparePhoneNum',
		width : 180,
		sortable : false,
		renderer:function(value){
        	if (value=="null") {
                return "";
            } else {
                return value;
            }
        }
	}, {
		header : '区域(省市)',
		dataIndex : 'PUarea',
		width : 170,
		sortable : false,
		renderer:function(value){
        	if (value=="null") {
                return "";
            } else {
                return value;
            }
        }
	}, {
		header : '收货地址',
		dataIndex : 'PUaddress',
		width : 200,
		sortable : false,
		renderer:function(value){
        	if (value=="null") {
                return "";
            } else {
                return value;
            }
        }
	}, {
		header : '邮编',
		dataIndex : 'PUzip',
		width : 100,
		sortable : false,
		renderer:function(value){
        	if (value=="null") {
                return "";
            } else {
                return value;
            }
        }
	}, {
		header : '备注',
		dataIndex : 'PUnote',
		width : 1000,
		sortable : false,
		renderer:function(value){
        	if (value=="null") {
                return "";
            } else {
                return value;
            }
        }
	}
	 ]);
			
	//高级查询表单
	function update_form(PUaddrId) {
		var updateForm = new Ext.FormPanel(
				{
					region : 'center',
					labelWidth : 55,
					frame : false,
					labelAlign : 'right',
					autoScroll : true,
					border : false,
					url : 'address!save.do?PUaddrId='+PUaddrId,
					method : 'POST',
					reader : new Ext.data.JsonReader( {
						totalProperty : 'totalProperty',
						root : 'root'
					}, Jthtwb),

					items : [ {
						layout : 'column',
						labelAlign : 'right',
						border : false,
						frame : true,
						//    autoHeight : true,
						bodyStyle : 'padding-right:5px;padding-left:5px;padding-top:0px;',
						items : [  {

							columnWidth : .97,
							layout : "form",
							baseCls : "x-plain",
							labelWidth : 80,

							items : [ {
								xtype : 'textfield',
								fieldLabel : '收件人姓名',
								iconCls : 'bmenu',
								name : 'PUname',
								id:'PUname',
								allowBlank : false,
								emptyText : '',
								anchor : '98%'
							}, {
								xtype : 'numberfield',
								fieldLabel : '联系电话',
								iconCls : 'bmenu',
								name : 'PUphoneNum',
								id:'tzze',
								allowBlank : false,
								emptyText : '',
								anchor : '98%'
							}, {
								xtype : 'numberfield',
								fieldLabel : '备用电话',
								iconCls : 'bmenu',
								name : 'PUsparePhoneNum',
								id:'PUsparePhoneNum',
								allowBlank : true,
								emptyText : '',
								anchor : '98%'
							}, {
								xtype : 'textfield',
								fieldLabel : '区域(省市)',
								iconCls : 'bmenu',
								name : 'PUarea',
								id:'PUarea',
								allowBlank : false,
								emptyText : '',
								anchor : '98%'
							}, {
								xtype : 'textfield',
								fieldLabel : '收货地址',
								iconCls : 'bmenu',
								name : 'PUaddress',
								id:'PUaddress',
								allowBlank : false,
								emptyText : '',
								anchor : '98%'
							}, {
								xtype : 'textfield',
								fieldLabel : '邮政编码',
								iconCls : 'bmenu',
								name : 'PUzip',
								id:'PUzip',
								allowBlank : false,
								emptyText : '',
								anchor : '98%'
							}, {
								xtype : 'textarea',
								fieldLabel : '备注',
								iconCls : 'bmenu',
								name : 'PUnote',
								id:'PUnote',
								allowBlank : true,
								emptyText : '',
								anchor : '98%'
							}							 ]
						} ]
					} ]
				});

		var btn_save_form = new Ext.Button({
			text : '保存',
			iconCls : 'sy-save',
			handler : function(btn) {
				var frm = updateForm.getForm();

				if (frm.isValid()) {
					frm.submit( {

						waitTitle : '请稍候',
						waitMsg : '正在提交表单数据,请稍候...',
						success : function(form, action) {
							Ext.MessageBox.alert('提示', "保存成功！");
						//	btn.enable();
						updateForm_window.close();
						ds.reload();
					},
					failure : function(form, action) {
						Ext.Msg.show( {
							title : '错误提示',
							msg : action.result.message,
							buttons : Ext.Msg.OK,
							fn : function() {
								unfield.focus(true);
								btn.enable();
							},
							icon : Ext.Msg.ERROR
						});
					},// failure
						icon : Ext.Msg.ERROR

					});
				}
				;// isValid
			}
		});

		var btn_reset_form = new Ext.Button({
			text : '取消',
			iconCls : 'sy-reset',
			handler : function(btn) {
				updateForm_window.close();
			}
		});

		var updateForm_window = new Ext.Window({
			tbar : [ btn_save_form, '-', btn_reset_form],
			width : 700,
			height : 300,
			title : '收货地址管理',
			iconCls : 'sy-win-flag',
			modal : true,
			items : [ updateForm ]
		});
		//	message_detail_window.setTitle("新增随访短信");
		updateForm_window.show();

	} // end form

	var btn_add = new Ext.Button( {
		text : '新增',
		iconCls : 'sy-add',
		handler : function() {

			update_form(-1);
		}

	});
	
	var btn_modify = new Ext.Button( {
		text : '修改',
		iconCls : 'sy-sure',
		handler : function() {
			var addr = grid.getSelectionModel().getSelected();
			if (addr) {
				if(addr.data.PUaddrId != "") {
        			update_form(addr.data.PUaddrId);
	        		Ext.get("PUname").dom.value = addr.data.PUname;
					Ext.get("PUphoneNum").dom.value = addr.data.PUphoneNum;
					Ext.get("PUsparePhoneNum").dom.value = addr.data.PUsparePhoneNum;
					Ext.get("PUarea").dom.value = addr.data.PUarea;
					Ext.get("PUaddress").dom.value = addr.data.PUaddress;
					Ext.get("PUzip").dom.value = addr.data.PUzip;
					Ext.get("PUnote").dom.value = addr.data.PUnote;
				}
				
			} else {
				Ext.MessageBox.alert('提示', '请选择一条记录进行操作！');
			}
		}

	});

	var btn_del = new Ext.Button(
			{
				text : '删除',
				iconCls : 'sy-delete',
				handler : function() {
					var addr = grid.getSelectionModel().getSelected();
					var xhStr = "";
					if (addr) {
						var array = sm.getSelections();
						Ext.each(array, function(addr) {
							xhStr += addr.data.PUaddrId + ",";
						});
						if (xhStr.length== 0) {
							xhStr = "0";
						} else {
							xhStr = xhStr.substring(0, xhStr.length - 1);
						}
					
						Ext.Msg
								.confirm(
										'确认删除',
										'您确定删除该条记录吗？',
										function(btn) {
											if (btn == 'yes') {
												Ext.Ajax
														.request( {
															url : 'address!delete.do?PUaddrId=' + xhStr,
															success : function() {
																ds.reload();
																Ext.MessageBox
																		.alert(
																				'提示',
																				'删除记录成功！！');
															},
															failure : function() {
																Ext.Msg
																		.show( {
																			title : '错误提示',
																			msg : '删除记录失败！！',
																			buttons : Ext.Msg.OK,
																			icon : Ext.Msg.ERROR
																		});
															}
														});
											}
										});

					} else {
						Ext.MessageBox.alert('提示', '请选择一行纪录进行操作！');
						return;
					}
				}

			});
	
	//生成表格
	var grid = new Ext.grid.GridPanel( {
		closable : true,
		region : 'center',
		height : 580,
		//width:800, 
		autoWidth : true,
		cm : colM,
		ds : ds,
		sm : sm,
		listeners:{
			rowclick :function(grid,row){
				var addr = grid.getSelectionModel().getSelected();
				//alert("成功");
			},
			rowdblclick:function(grid,row){ //双击打开
        	var addr = grid.getSelectionModel().getSelected();
        	if(addr){
        		
        		if(addr.data.PUaddrId != "") {
        			update_form(addr.data.PUaddrId);
	        		Ext.get("PUname").dom.value = addr.data.PUname;
					Ext.get("PUphoneNum").dom.value = addr.data.PUphoneNum;
					Ext.get("PUsparePhoneNum").dom.value = addr.data.PUsparePhoneNum;
					Ext.get("PUarea").dom.value = addr.data.PUarea;
					Ext.get("PUaddress").dom.value = addr.data.PUaddress;
					Ext.get("PUzip").dom.value = addr.data.PUzip;
					Ext.get("PUnote").dom.value = addr.data.PUnote;
				}
			}
        	}
        }//,
		//	stripeRows : true,
		//	loadMask : true, //遮罩
	//	enableHdMenu : true,
	//	stripeRows: true,
		//tbar:[btn_add,'-',btn_update,'-',btn_del],
	//	title:'收获地址列表'
	//	bbar : new Ext.PagingToolbar( {
	//		pageSize : 100,
	//		store : ds,
	//		displayInfo : true,
	//		displayMsg : '显示 {0} 条到 {1} 条记录，一共 {2} 条',
	//		emptyMsg : "没有记录"
	//	})
	});

	var top = new Ext.Panel(
			{
				region : 'north',
				layout:'fit',
				width : 900,
				height : 30,
				
			//	bodyStyle : 'padding:0px;',
				bbar : [
						btn_add,
						'-',
						btn_modify,
						'-',
						btn_del
						]

			});

	var center = new Ext.Panel( { //new 一个Panel 用以显示菜单
				region : 'center',
				width : 900,
				layout : 'fit',
				height : 550,
				//split:true,
				// minSize: 175,
				items : [ grid ]
			});
			window.onload = function(){
				Ext.onReady(function() {

				new Ext.Viewport( {

			layout : "border",

			items : [ top, center ]

		});
	});
	}
</script>
<body>

	</body>
</html>
